﻿Imports System.CodeDom
Imports System.Reflection

Public Class PropertyObject

    Private _Name As String
    Public Property Name() As String
        Get
            Return _Name
        End Get
        Set(ByVal value As String)
            _Name = value
        End Set
    End Property

    Private _MemberAttributeObject As MemberAttributeObject
    Public Property MemberAttributeObject() As MemberAttributeObject
        Get
            Return _MemberAttributeObject
        End Get
        Set(ByVal value As MemberAttributeObject)
            _MemberAttributeObject = value
        End Set
    End Property

    Private _HasGet As Boolean
    Public Property HasGet() As Boolean
        Get
            Return _HasGet
        End Get
        Set(ByVal value As Boolean)
            _HasGet = value
        End Set
    End Property

    Private _HasSet As Boolean
    Public Property HasSet() As Boolean
        Get
            Return _HasSet
        End Get
        Set(ByVal value As Boolean)
            _HasSet = value
        End Set
    End Property

    Private _PropertyType As String
    Public Property PropertyType() As String
        Get
            Return _PropertyType
        End Get
        Set(ByVal value As String)
            _PropertyType = value
        End Set
    End Property

    Public Function TypeAttributes() As Type
        Return System.Reflection.Emit.TypeBuilder.GetType(PropertyType, True, True)
    End Function

End Class
